package com.harmony.pilot.knowledge.repository;

import com.harmony.pilot.knowledge.entity.ClassDetail;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * 类详细信息Repository
 */
@Repository
public interface ClassDetailRepository extends JpaRepository<ClassDetail, Long> {
    
    /**
     * 根据snippet ID查询
     */
    ClassDetail findBySnippetId(Long snippetId);
    
    /**
     * 根据类名模糊查询
     */
    List<ClassDetail> findByClassNameContaining(String className);
    
    /**
     * 根据命名空间查询
     */
    List<ClassDetail> findByNamespaceName(String namespaceName);
    
    /**
     * 根据类类型查询
     */
    List<ClassDetail> findByClassType(String classType);
    
    /**
     * 查找所有抽象类
     */
    List<ClassDetail> findByIsAbstractTrue();
    
    /**
     * 查找所有模板类
     */
    List<ClassDetail> findByIsTemplateTrue();
}

